Personal data platform

ABSTRACT

Receive a plurality of data management policies from a user. Store in a memory the data management policies in association with a context and an identifier of the user. Receive personal data of the user collected in one or more contexts by one or more collection devices. Determine whether the personal data complies with one or more of the data management policies with respect to collecting personal data of the user. If the personal data complies with the data management policies with respect to collecting personal data on the user, then storing in the memory the personal data in association with the identifier of the user. Provide a centralized interface to the user for managing the personal data stored in the memory.

TECHNICAL FIELD

The present disclosure generally relates to data management and morespecifically relates to centralized personal data management.

BACKGROUND

Computer and communications technologies have contributed significantlyto the arrival of the Information Age. Massive amounts of data arecontinuously generated by and about electronic device users, and apercentage of the generated data is collected, processed, analyzed,exchanged, and utilized. Consequently, there is continuous effort toimprove on the data management technologies, especially on themanagement of large quantities of data.

SUMMARY

The present disclosure generally relates to data management.

In particular embodiments, a method of personal data managementcomprises: receiving a plurality of data management policies from auser; storing in a memory the data management policies in associationwith a context and an identifier of the user; receiving personal data ofthe user collected in one or more contexts by one or more collectiondevices; determining whether the personal data complies with one or moreof the data management policies with respect to collecting personal dataof the user; if the personal data complies with the data managementpolicies with respect to collecting personal data on the user, thenstoring in the memory the personal data in association with theidentifier of the user; and providing a centralized interface to theuser for managing the personal data stored in the memory.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A illustrates an example network environment.

FIG. 1B illustrates an example system for managing personal data.

FIG. 2 illustrates an example method for managing personal data, whichmay be suitable for execution on a server.

FIG. 3 illustrates an example method for managing personal data, whichmay be suitable for execution on a collection device.

FIG. 4 illustrates an example computer system.

DETAILED DESCRIPTION

The present disclosure is now described in detail with reference to afew example embodiments thereof as illustrated in the accompanyingdrawings. In the following description, numerous specific details areset forth in order to provide a thorough understanding of the presentdisclosure. It is apparent, however, to one skilled in the art, that thepresent disclosure may be practiced without some or all of thesespecific details. In other instances, well known process steps and/orstructures have not been described in detail in order to notunnecessarily obscure the present disclosure. In addition, while thedisclosure is described in conjunction with the particular embodiments,it should be understood that this description is not intended to limitthe disclosure to the described embodiments. To the contrary, thedescription is intended to cover alternatives, modifications, andequivalents as may be included within the spirit and scope of thedisclosure as defined by the appended claims.

In the current Information Age, massive amounts of data are continuouslygenerated. Data is, for example and without limitation, information by,about, or on behalf of users, entities, groups, physical objects,vehicles, appliances, sensors, information objects, topics, subjects,times, time periods or durations, events, places, businesses, orbuildings. Data may come from a variety of sources, including, forexample and without limitation, any real-world or online sources capableof producing and publishing or sharing data. Data is information, andinformation is data. Such data may come from both public and privatesources, and each is capable of generating personal data. Personal data,such as data generated directly or indirectly by individuals such astheir activities and associations, may be generated both online andoffline as the individual conducts their daily activities. For exampleand without limitation, when a person becomes a registered user of awebsite, as a part of the registration process, he may provide thewebsite his demographic data, such as age, gender, ethnicity,residential address, work address, telephone numbers, email address,marital status, family status, education level, profession, annualincome, hobbies, interests, etc. When a person meets a new friend oracquaintance, he may store the contact data of the new friend oracquaintance in his communications device. When a person contacts afriend via a mobile telephone, electronic mail (E-mail), or instantmessage (IM), the communications device or application may record thename and contact data of the friend and the time and length of thecommunication as well as the content of the communication in someinstances. When a person visits various websites, the servers hostingthe websites may record the time he visits each of the websites and theactions taken by him at each of the website just as an association withthe user is created when they publish online content, publications,annotations or comments left by users including text, audio, image andvideo media objects. When a person visits a physical location, thenavigation system in his vehicle or his mobile telephone may record thephysical location he visits and the time of the visit as well as thepatterns of movement of the user over time through space and timeincluding co-location information with other user, vehicles, devices orother sensors.

Personal data generated by the individuals may be used in many differentways by many different parties, stored in different locations and indiffering formats. For example and without limitation, businesses oftenutilize an individual's personal data to help deliver personalizedservices to the individual, such as providing personalizedrecommendations on services or products based on the individual'sdisclosed hobbies and interests or the individual's past purchases oronline search or browsing behavior. Social network services sometimeshelp individuals establish social connections to friends, families,coworkers, and other acquaintances and can filter or preferencerecommendation of new friendships or associations as sources ofpotential personal data.

Although personal data may provide many benefits to both the individualsgenerating the data and the third parties servicing the individuals,currently there is no efficient and effective way to enable theindividuals to manage their personal data conveniently and through asingle interface, capturing as much, if not all, of the user's personaldata into one virtual place accessible through many means and potentialinterfaces such as mobile or personal computing devices. Various piecesof personal data with respect to an individual are collected, stored,and processed by different parties located at different sites, often inan ad hoc manner. The parties rarely share the different pieces of datacollected on the same individual, and there is no centralized locationfrom where an individual may manage all of his personal data collectedby the different parties. Furthermore, a great amount of personal datais lost due to the deficiencies in the way such data is captured. Forexample, each time a person becomes a registered user of a differentwebsite, he needs to provide his demographic data to the website again.If a person visits different websites, each website only collects andstores data on the actions he takes at the particular website, and theactions he takes at one website is usually not known to, i.e., sharedwith, the other websites. If a person calls a friend on his mobiletelephone, data on the telephone call is only available on his mobiletelephone. If the person does not manually store the data, the data isoften lost.

To address some of these problems, particular embodiments provide apolicy-based system that enables a person to manage the retention,processing, and usage of his personal data via a centralized interfaceand any collection device or context-specific policy implementationmeans, e.g., a mobile phone application or web browser plug in,data-sharing agreement with credit card companies, etc. A person maydefine a set of policies, contexts, and means that govern themonitoring, collecting, aggregating, filtering, processing, storing,publishing, and sharing of his personal data. In addition, a centralizedinterface is provided that enables the user to monitor data events andtrends including the ability to edit the policies and contexts as wellas any previously collected personal data. A user thus has completecontrol over his personal data.

Computer and communications technologies enable individuals to transferdata conveniently, freely, and often with insignificant or short delays.For example and without limitation, wired and wireless client devicesconnected to the various types of networks enable individuals to accessand exchange data. FIG. 1A illustrates an example network environment100 via which personal data may be collected, exchanged, and shared.Network environment 100 includes a network 110 coupling one or moreservers 120 and one or more clients 130 to each other. In particularembodiments, network 110 is an intranet, an extranet, a virtual privatenetwork (VPN), a local area network (LAN), a wireless LAN (WLAN), a widearea network (WAN), a metropolitan area network (MAN), a communicationsnetwork, a satellite network, a portion of the Internet, or anothernetwork 110 or a combination of two or more such networks 110. Thepresent disclosure contemplates any suitable network 110.

One or more links 150 couple servers 120 or clients 130 to network 110.In particular embodiments, one or more links 150 each includes one ormore wired, wireless, or optical links 150. In particular embodiments,one or more links 150 each includes an intranet, an extranet, a VPN, aLAN, a WLAN, a WAN, a MAN, a communications network, a satellitenetwork, a portion of the Internet, or another link 150 or a combinationof two or more such links 150. The present disclosure contemplates anysuitable links 150 coupling servers 120 and clients 130 to network 110.

In particular embodiments, each server 120 may be a unitary server ormay be a distributed server spanning multiple computers or multipledatacenters. Servers 120 may be of various types, such as, for exampleand without limitation, web server, news server, mail server, messageserver, advertising server, file server, application server, exchangeserver, database server, or proxy server. In particular embodiments,each server 120 may include hardware, software, or embedded logiccomponents or a combination of two or more such components for carryingout the appropriate functionalities implemented or supported by server120. For example, a web server is generally capable of hosting websitescontaining web pages or particular elements of web pages. Morespecifically, a web server may host HTML files or other file types, ormay dynamically create or constitute files upon a request, andcommunicate them to clients 130 in response to HTTP or other requestsfrom clients 130. A mail server is generally capable of providingelectronic mail services to various clients 130. A database server isgenerally capable of providing an interface for managing data stored inone or more data stores.

In particular embodiments, a client 130 may be an electronic deviceincluding hardware, software, or embedded logic components or acombination of two or more such components and capable of carrying outthe appropriate functionalities implemented or supported by client 130.For example and without limitation, a client 130 may be a desktopcomputer system, a notebook computer system, a netbook computer system,a handheld electronic device, or a mobile telephone. A client 130 mayenable an Internet user at client 130 to access network 110. A client130 may have a web browser, such as Microsoft Internet Explore, orMozilla Firefox, and may have one or more add-ons, plug-ins, or otherextensions, such as Google Toolbar or Yahoo Toolbar. A client 130 mayenable its user to communicate with other users at other clients 130.The present disclosure contemplates any suitable clients 130.

In particular embodiments, one or more data storages 140 may becommunicatively linked to sever 120 via a link 150. In particularembodiments, data storage 140 may be used to store user profiles, userdata policies and contexts, user personal data, or other suitable data.In particular embodiments, server 120 may implement one or moreinterfaces 122 that provide access to the data stored in data storage140. For example and without limitation, the interface may enable server120 to retrieve the data stored in data storage 140, client 130 to adddata to, delete data from, or modify data stored in data storage 140, ora user at client 130 to manage his personal data, profile, or datapolicies stored in data storage 140. Particular embodiments mayimplement interface 122 as software programs. For example and withoutlimitation, interface 122 may be application programming interface(API), one or more desktop applications, or one or more web or mobileapplications, plug-ins, modules, widgets, toolbars or other form ofindependent or add-on personal data management interface.

In particular embodiments, client 130 may implement one or more softwareapplications such as desktop applications, mobile applications, or webapplications. The software applications may monitor and collect personaldata generated by a user at client 130 and transmit the collectedpersonal data to server 120 to be stored in one or more data storages140. The software applications may provide a user interface that enablesa user at client 130 to manage his collected personal data or datapolicies.

FIG. 1B illustrates an example system for managing personal data. Thesystem includes a personal data exchange engine 160. Particularembodiments may implement personal data exchange engine 160 as hardware,software or a combination of hardware and software. In particularembodiments, personal data exchange engine 160 may be implemented on oneor more servers 120. In particular embodiments, personal data exchangeengine 160 may include one or more modules, and each module mayimplement specific functionalities. For example, personal data exchangeengine 160 may include a profile and relations manager 162, a globalmatching engine manager 164, a collection and storage manager 166, atransaction manager 168, and a filtering and publication manager 170. Inaddition, the system may also include an account manager 172 and a datasharing and third party services module 174 that may be implemented onone or more servers 120 or clients 130. The specific functionalities ofthese modules are described in more detail below in connection withselected steps illustrated in FIG. 2.

FIG. 2 illustrates an example method for managing personal data.Particular embodiments consider any data on a user or generated directlyor indirectly by the user as the user's personal data. The stepsillustrated in FIG. 2 may be implemented as computer software andexecuted on server 120. In particular embodiments, when a person wishesto have his personal data retained and managed, he may subscribe to apersonal data management service. To do so, in particular embodiments,the person may register with the personal data management service tobecome a registered user of the service. Once the person becomes aregistered user, a user profile may be constructed for the person (step210). The user profile may include data and data policies unique to theuser. In this context, a “user” could also be a collection of two ormore users such as a couple, a family, an organization or business, anassociation, or otherwise interconnected set of users, and in theseembodiments the user profile is the aggregated profile of all includedusers. For example and without limitation, the user profile may includethe user's username and password, with which the user may access hisaccount data and data policies. In addition, the user profile mayinclude the user's demographic data, communication data, presence data,and transaction data. If the personal data management service is a paidservice, the user profile may include the user's payment method, such asthe user's credit card number or bank account number. The user profilemay also include unique tokens assigned to the user that may be used inconnection with implementing various functionalities provided by thepersonal data management service.

In particular embodiments, the user profiles of all the registered usersmay be stored in one or more data storages 140 communicatively linked toand accessible by personal data exchange engine 160 residing on one ormore servers 120. In particular embodiments, profile and relationsmanager 162 may manage the user profiles. The individual users mayaccess their own user profiles via account manager 172 residing on theirclient devices such as clients 130. Account manager 172 may in turncommunicate with profile and relations manager 162 on behalf of theindividual users.

The user may provide the personal data management service his datamanagement policies that govern how his personal data is to be managedin all or varying contexts (step 212). A context may represent aparticular situation. A user may specify any number of contextsrepresenting a variety of different situations. The user's datamanagement policies may each apply to individual contexts or to allcontexts. For example and without limitation, the user's data managementpolicies may indicate the type of personal data to be collected or notto be collected, the time for collecting the data, the device used tocollect the data, the processes applied to the collected data such asaggregation, filtering, characterization, linking, or encryption, whatdata may be published, what data may be shared with specific parties,etc. In particular embodiments, the personal data management service mayalso have a set of default policies. The user may choose to use none,some, or all of the default policies and may provide his own datamanagement policies in addition or in place of the default policies ormay modify the default policies to suit his needs. With respect toapplying data management policies to contexts, for example, one policymay indicate not to accept any telephone calls from a particular personunder all circumstances, i.e., applying to all contexts, or anotherpolicy may indicate not to accept any telephone calls from a particularperson only when the user is at work, i.e., applying to a specificcontext.

In particular embodiments, the user's data management policies may bestored in data storage 140 communicatively linked to and accessible bypersonal data exchange engine 160 residing on one or more servers 120(step 214). For example, the user's data management policies may bestored together with the user's user profile, and both may be uniquelyidentified with the user's username or a unique token or otheridentifier assigned to the user. Profile and relations manager 162 mayalso manage the data management policies of all registered users, andthe individual users may access their data management policies usingaccount manager 172 residing on their client devices such as client 130.

When the personal data management service receives the user's personaldata, e.g., from a client 130 associated with the user such as a mobilepersonal device or from a client 130 not associated with the user suchas an environmental sensor that has collected the personal data (step220), the personal data management service ensures that the receivedpersonal data complies with the user's data management policies (step222). For example, the personal data management service may determinethat the received personal data is indeed the type of data that shouldbe collected according to the specific data collection policies includedin the user's data management policies. In particular embodiments, thereceived personal data may include the user's login or user name or theunique token or other identifier assigned to the user so that thepersonal data management service may be able to determine to which userthe personal data belongs. Ensuring that the collected personal datacomplies with a user's data management policies may be done either on aserver 120, e.g., by collection and storage manager 166, or on a client130, e.g., by the client responsible for collecting the personal data.

If the received personal data should not have been collected, e.g., thereceived personal data is not the type that should be collectedaccording to the user's data collection policies, the personal datamanagement service may discard the received personal data, filter thedata, blur the data, or otherwise modify the data. On the other hand, ifthe received personal data complies with the user's data managementpolicies, the personal data management service may further process thereceived personal data based on the specific data process policiesincluded in the user's data management policies (step 224). For exampleand without limitation, the personal data may be aggregated, filtered,summarized, characterized, modified by a data model, linked to or from,published, stored, shared, etc. There may be a combination of defaultcategories and user defined categories. If the received personal data isrelating to a purchase the user has recently made at a website, it maybe categorized to an “Online Commerce Transactions” category and usedfor future personalization of search results based upon purchases aswell as automatically shared with an intimate set of friends as aproduct recommendation. If the received personal data is relating to anE-mail sent to a friend, it may be categorized to a “Social Networks”category. In particular embodiments, the personal data may be arrangedaccording to specific data structure such as in a hierarchy for easyaccess and retrieval. For example, there may be data categories andwithin each category there may be subcategories, such as within theSocial Networks category, there may be “Families”, “Friends”,“Colleagues”, “Casual Acquaintances” subcategories as well asattribute-defined groups or categories, e.g. friends with whom I haveseen a concert. In particular embodiments, the various functionalitiesthat process the collected personal data may be performed by variouscomponents of personal data exchange engine 160, e.g., transactionmanager 168 or filtering and publication manager 170.

In particular embodiments, to protect user privacy, the user may specifydata privacy policies to encrypt or anonymize his personal data.Particular embodiments may use existing encryption or anonymizationtechniques. For example and without limitation, each user and hisprofile, data management policies, and personal data may be identifiedusing a unique random token that bears no relationship to the user'sreal identity.

In particular embodiments, the user may specify data exchange policies.Sometimes, the user may wish to automatically share certain types ofdata with specific third parties. For example, the user may specify apolicy to automatically inform his wife of his physical location databetween 8:00 pm and 8:00 am. When the personal data management servicereceives data on the user's physical location between 8:00 pm and 8:00am, based on the particular policy, the personal data management servicemay send an E-mail to an E-mail address provided by the user, e.g., theE-mail address of the user's wife, with the user's physical locationdata. Conversely, to protect his data, the user may also specify apolicy indicating the type of data not to be shared with anyone or withspecific parties. In particular embodiments, data sharing satisfactionand third party services module 174 may perform some or all of thefunctionalities relating to sharing a user's personal data with specificthird parties.

In particular embodiments, the user may specify that one or more datamodels are to be applied to specific pieces of his personal data throughone or more data management policies. For example and withoutlimitation, certain types of data may be more important to the user thanothers and thus may be processed differently. From the user's socialnetwork data, the user may specify one or more individuals as hisclosest friends. Data on communications with these close friends may beprocessed differently, e.g., having higher priority or stronger privacyprotection, than communications with other individuals.

The personal data, once processed, may be stored in data storage 140communicatively linked to and accessible by server 120 (step 226). Theuser's personal data may be uniquely identified with the user's usernameor a unique token assigned to the user. Particular embodiments may storethe personal data in its raw data format or in a processed format orboth. In particular embodiments, data storage 140 may implement adatabase, such as a relational database.

In particular embodiments, the user may modify his user profile, datamanagement policies, or personal data at any time, e.g., via accountmanager 172. The user may access his account via an interface providedby the personal data management service. For example and withoutlimitation, the interface may be implemented as a web application thatmay be executed in a browser, mobile application or as a desktopapplication. The user may verify his identity with the personal datamanagement service by logging into his account using his username andpassword. Once logged in, the user may update his profile, add new datamanagement policies, delete or modify existing data management policies,review personal data, modify or delete specific pieces of personal datavia the interface, publish specific pieces of personal data, or sharespecific pieces of personal data with specific third parties.

When the personal data management service receives a user modificationto his user profile, data management policies, or personal data (step230), the personal data management service modifies the appropriate datastored in data storage 140 accordingly (step 232). In particularembodiments, profile and relations manager 162 may perform some or allof the functionalities relating to managing users' profile, datamanagement policies, and personal data.

Steps 220-226 may be repeated as often as necessary, such as each timenew personal data is received. Similarly, steps 230-232 may be repeatedas often as necessary, such as each time the user wishes to review ormodify his data.

In particular embodiments, the interface provides the user with acentralized access point through which the user may manage all of hispersonal data, regardless of from where and how his personal data isgenerated, where his personal data is stored, who and what collects hispersonal data, or when his personal data is collected. Further more, thedata management policies ensure that the user's personal data isprocessed, handled, and used exactly as the user specifies, thus givingthe user complete control of his personal data. For example, the usermay have both a Yahoo and a Google membership, using each to searchsometimes and yet the present invention enables the user to store datagenerated on both sites into one unified data repository, virtual oractual that is available to further increase personalization.

FIG. 3 illustrates an example method for managing personal data. Thesteps illustrated in FIG. 3 may be implemented as computer software andexecuted on a collection device, e.g., client 130. In particularembodiments, when a user registers with the personal data managementservice, the user may download and install the computer software toclient 130. The computer software may function as an agent for the userto continuously monitor and collection personal data and transmit thecollected personal data to personal data exchange engine 160 implementedon one or more servers 120. Subsequently, when newer versions of thecomputer software become available, the copy of the computer softwareinstalled on client 130 may be automatically or manually updated. If theuser has multiple clients 130, the user may download and install a copyof the computer software to each of his clients 130 so that the user mayuse the personal data management service via different clients 130 aswell as various network operators with client 130 sensors or server 120personal data sources.

In particular embodiments, the computer software runs continuously,beginning immediately upon user registration and uploading of actual ordefault personal data polices and is present in every context and onevery personal user device thereafter.

In other embodiments, the computer software may be executedautomatically when client 130 is turned on and may run in the backgroundso as not to interfere with the user's usage of client 130. The user'spersonal data may be continuously collected (step 310), immediatelyprocessed according to the appropriate user personal data polices (step312), and transmitted to personal data exchange engine 160 atappropriate server 120 (step 314). In particular embodiments, thecollected personal data may be temporarily stored on client 130. Forexample, if the user makes a telephone call using his mobile telephone,the computer software may collect data on the telephone call. However,it may not be desirable to transmit the collected personal data duringthe telephone call as the transmission may interfere with the telephonecall. In this case, the collected personal data on the telephone callmay be temporarily stored on the mobile telephone and transmitted toserver 120 after the user has completed the telephone call, e.g., whenthe mobile telephone is in an idle state. Sometimes, client 130 may betemporarily disconnected from network 110. In this case, the personaldata collected by client 130 may be temporarily stored locally on client130 and transmitted to server 120 after client 130 is reconnected tonetwork 110. In particular embodiments, the collected personal data maybe processed on client 130 (step 312) before it is transmitted topersonal data exchange engine 160. For example, the data that does notcomply with the user's data management policies may be discarded byclient 130 without ever being transmitted to personal data exchangeengine 160.

The user's personal data, once collected, may be used in many differentways by the user himself or by authorized third parties. The user mayreview his past activities, e.g., what he has purchased, which websiteshe has visited, what friends he has contacted, etc. The user may providecertain pieces of his personal data to trusted third parties so that thethird parties may provide him with personalized services. The user maydirect the personal data management service to forward his past onlinepurchases from all websites to a particular business so that thebusiness may have more comprehensive data about the user's purchasingactivities for the purpose of providing personalized services. One ormore third parties may also request some or all of the user's personaldata stored in data storage 140. Upon receiving such a request from athird party, the personal data management service may verify the requestagainst the user's data management policies with respect to sharing hispersonal data. If the user's data management policies indicate that thethird party is authorized to access the requested personal data, thepersonal data management service may transmit the requested personaldata to the third party. Otherwise, the personal data management servicemay deny the third party's request.

Particular embodiments may be implemented as hardware, software, or acombination of hardware and software. For example and withoutlimitation, one or more computer systems may execute particular logic orsoftware to perform one or more steps of one or more processes describedor illustrated herein. One or more of the computer systems may beunitary or distributed, spanning multiple computer systems or multipledatacenters, where appropriate. The present disclosure contemplates anysuitable computer system. In particular embodiments, performing one ormore steps of one or more processes described or illustrated herein neednot necessarily be limited to one or more particular geographiclocations and need not necessarily have temporal limitations. As anexample and not by way of limitation, one or more computer systems maycarry out their functions in “real time,” “offline,” in “batch mode,”otherwise, or in a suitable combination of the foregoing, whereappropriate. One or more of the computer systems may carry out one ormore portions of their functions at different times, at differentlocations, using different processing, where appropriate. Herein,reference to logic may encompass software, and vice versa, whereappropriate. Reference to software may encompass one or more computerprograms, and vice versa, where appropriate. Reference to software mayencompass data, instructions, or both, and vice versa, whereappropriate. Similarly, reference to data may encompass instructions,and vice versa, where appropriate.

One or more computer-readable storage media may store or otherwiseembody software implementing particular embodiments. A computer-readablemedium may be any medium capable of carrying, communicating, containing,holding, maintaining, propagating, retaining, storing, transmitting,transporting, or otherwise embodying software, where appropriate. Acomputer-readable medium may be a biological, chemical, electronic,electromagnetic, infrared, magnetic, optical, quantum, or other suitablemedium or a combination of two or more such media, where appropriate. Acomputer-readable medium may include one or more nanometer-scalecomponents or otherwise embody nanometer-scale design or fabrication.Example computer-readable storage media include, but are not limited to,compact discs (CDs), field-programmable gate arrays (FPGAs), floppydisks, floptical disks, hard disks, holographic storage devices,integrated circuits (ICs) (such as application-specific integratedcircuits (ASICs)), magnetic tape, caches, programmable logic devices(PLDs), random-access memory (RAM) devices, read-only memory (ROM)devices, semiconductor memory devices, and other suitablecomputer-readable storage media.

Software implementing particular embodiments may be written in anysuitable programming language (which may be procedural or objectoriented) or combination of programming languages, where appropriate.Any suitable type of computer system (such as a single- ormultiple-processor computer system) or systems may execute softwareimplementing particular embodiments, where appropriate. Ageneral-purpose computer system may execute software implementingparticular embodiments, where appropriate.

For example, FIG. 4 illustrates an example computer system 400 suitablefor implementing one or more portions of particular embodiments.Although the present disclosure describes and illustrates a particularcomputer system 400 having particular components in a particularconfiguration, the present disclosure contemplates any suitable computersystem having any suitable components in any suitable configuration.Moreover, computer system 400 may have take any suitable physical form,such as for example one or more integrated circuit (ICs), one or moreprinted circuit boards (PCBs), one or more handheld or other devices(such as mobile telephones or PDAs), one or more personal computers, orone or more super computers.

Computer system 400 may have one or more input devices 466 (which mayinclude a keypad, keyboard, mouse, stylus, etc.), one or more outputdevices 468 (which may include one or more displays, one or morespeakers, one or more printers, etc.), one or more storage devices 470,and one or more storage medium 472. An input device 466 may be externalor internal to computer system 400. An output device 468 may be externalor internal to computer system 400. A storage device 470 may be externalor internal to computer system 400. A storage medium 472 may be externalor internal to computer system 400.

System bus 410 couples subsystems of computer system 400 to each other.Herein, reference to a bus encompasses one or more digital signal linesserving a common function. The present disclosure contemplates anysuitable system bus 410 including any suitable bus structures (such asone or more memory buses, one or more peripheral buses, one or more alocal buses, or a combination of the foregoing) having any suitable busarchitectures. Example bus architectures include, but are not limitedto, Industry Standard Architecture (ISA) bus, Enhanced ISA (EISA) bus,Micro Channel Architecture (MCA) bus, Video Electronics StandardsAssociation local (VLB) bus, Peripheral Component Interconnect (PCI)bus, PCI-Express bus (PCI-X), and Accelerated Graphics Port (AGP) bus.

Computer system 400 includes one or more processors 420 (or centralprocessing units (CPUs)). A processor 420 may contain a cache 422 fortemporary local storage of instructions, data, or computer addresses.Processors 420 are coupled to one or more storage devices, includingmemory 430. Memory 430 may include random access memory (RAM) 432 andread-only memory (ROM) 434. Data and instructions may transferbidirectionally between processors 420 and RAM 432. Data andinstructions may transfer unidirectionally to processors 420 from ROM434. RAM 432 and ROM 434 may include any suitable computer-readablestorage media.

Computer system 400 includes fixed storage 440 coupled bidirectionallyto processors 420. Fixed storage 440 may be coupled to processors 420via storage control unit 452. Fixed storage 440 may provide additionaldata storage capacity and may include any suitable computer-readablestorage media. Fixed storage 440 may store an operating system (OS) 442,one or more executables 444, one or more applications or programs 446,data 448, and the like. Fixed storage 440 is typically a secondarystorage medium (such as a hard disk) that is slower than primarystorage. In appropriate cases, the data stored by fixed storage 440 maybe incorporated as virtual memory into memory 430.

Processors 420 may be coupled to a variety of interfaces, such as, forexample, graphics control 454, video interface 458, input interface 460,output interface 462, and storage interface 464, which in turn may berespectively coupled to appropriate devices. Example input or outputdevices include, but are not limited to, video displays, track balls,mice, keyboards, microphones, touch-sensitive displays, transducer cardreaders, magnetic or paper tape readers, tablets, styli, voice orhandwriting recognizers, biometrics readers, or computer systems.Network interface 456 may couple processors 420 to another computersystem or to network 110. With network interface 456, processors 420 mayreceive or send data from or to network 110 in the course of performingsteps of particular embodiments. Particular embodiments may executesolely on processors 420. Particular embodiments may execute onprocessors 420 and on one or more remote processors operating together.

In a network environment, where computer system 400 is connected tonetwork 110, computer system 400 may communicate with other devicesconnected to network 110. Computer system 400 may communicate withnetwork 110 via network interface 456. For example, computer system 400may receive data (such as a request or a response from another device)from network 110 in the form of one or more incoming packets at networkinterface 456 and memory 430 may store the incoming packets forsubsequent processing. Computer system 400 may send data (such as arequest or a response to another device) to network 110 in the form ofone or more outgoing packets from network interface 456, which memory430 may store prior to being sent. Processors 420 may access an incomingor outgoing packet in memory 430 to process it, according to particularneeds.

Particular embodiments involve one or more computer-storage productsthat include one or more computer-readable storage media that embodysoftware for performing one or more steps of one or more processesdescribed or illustrated herein. In particular embodiments, one or moreportions of the media, the software, or both may be designed andmanufactured specifically to perform one or more steps of one or moreprocesses described or illustrated herein. In addition or as analternative, in particular embodiments, one or more portions of themedia, the software, or both may be generally available without designor manufacture specific to processes described or illustrated herein.Example computer-readable storage media include, but are not limited to,CDs (such as CD-ROMs), FPGAs, floppy disks, floptical disks, hard disks,holographic storage devices, ICs (such as ASICs), magnetic tape, caches,PLDs, RAM devices, ROM devices, semiconductor memory devices, and othersuitable computer-readable storage media. In particular embodiments,software may be machine code which a compiler may generate or one ormore files containing higher-level code which a computer may executeusing an interpreter.

As an example and not by way of limitation, memory 430 may include oneor more computer-readable storage media embodying software and computersystem 400 may provide particular functionality described or illustratedherein as a result of processors 420 executing the software. Memory 430may store and processors 420 may execute the software. Memory 430 mayread the software from the computer-readable storage media in massstorage device 430 embodying the software or from one or more othersources via network interface 456. When executing the software,processors 420 may perform one or more steps of one or more processesdescribed or illustrated herein, which may include defining one or moredata structures for storage in memory 430 and modifying one or more ofthe data structures as directed by one or more portions the software,according to particular needs. In addition or as an alternative,computer system 400 may provide particular functionality described orillustrated herein as a result of logic hardwired or otherwise embodiedin a circuit, which may operate in place of or together with software toperform one or more steps of one or more processes described orillustrated herein. The present disclosure encompasses any suitablecombination of hardware and software, according to particular needs.

Although the present disclosure describes or illustrates particularoperations as occurring in a particular order, the present disclosurecontemplates any suitable operations occurring in any suitable order.Moreover, the present disclosure contemplates any suitable operationsbeing repeated one or more times in any suitable order. Although thepresent disclosure describes or illustrates particular operations asoccurring in sequence, the present disclosure contemplates any suitableoperations occurring at substantially the same time, where appropriate.Any suitable operation or sequence of operations described orillustrated herein may be interrupted, suspended, or otherwisecontrolled by another process, such as an operating system or kernel,where appropriate. The acts can operate in an operating systemenvironment or as stand-alone routines occupying all or a substantialpart of the system processing.

The present disclosure encompasses all changes, substitutions,variations, alterations, and modifications to the example embodimentsherein that a person having ordinary skill in the art would comprehend.Similarly, where appropriate, the appended claims encompass all changes,substitutions, variations, alterations, and modifications to the exampleembodiments herein that a person having ordinary skill in the art wouldcomprehend.

1-27. (canceled)
 28. A method comprising: providing, by a processor to auser client device, a centralized interface to manage personal dataassociated with the user; receiving, by the processor from the userclient device, user input via the interface, the input comprising aplurality of personal data management policies for the user that areunique to the user, the personal data management policies governing howpersonal data of the user is to be managed, each policy of the pluralityof the personal data management policies describing at least one actionselected from a group of actions consisting of monitoring, collecting,aggregating, filtering, processing, storing, publishing, or sharing ofthe personal data; receiving, by the processor from a personal dataclient device, further user input via the interface, the further inputcomprising personal data associated with the user; determining, by theprocessor, whether the received personal data complies with the receivedplurality of personal data management policies; when the receivedpersonal data complies, processing, by the processor, the receivedpersonal data in accordance with the received plurality of personal datamanagement policies; and when the received personal data does notcomply, perform a non-compliance operation, by the processor, on thereceived personal data, the non-compliance operation selected from agroup of operations consisting of discarding the received personal data,filtering the received personal data, blurring the received personaldata, or modifying the received personal data.
 29. The method of claim28, wherein the receiving, by the processor from the personal dataclient device, the further user input comprising the personal dataassociated with the user further comprises receiving, from a mobilepersonal device, the personal data associated with the user.
 30. Themethod of claim 28, wherein the receiving, by the processor from thepersonal data client device, the further user input comprising thepersonal data associated with the user further comprises receiving, froma client not associated with the user, the personal data associated withthe user.
 31. The method of claim 28, wherein the determining, by theprocessor, whether the received personal data complies with the receivedplurality of personal data management policies further comprisesensuring that the received personal data is a type of data that shouldbe collected according to specific data collection policies included inthe plurality of personal data management policies.
 32. The method ofclaim 28, wherein the receiving of the further user input comprising thepersonal data associated with the user further comprises receiving anidentifier assigned to the user.
 33. The method of claim 28, wherein,when the received personal data complies, the processing, by theprocessor, of the received personal data in accordance with theplurality of personal data management policies further comprisesprocessing the received personal data based on specific data processpolicies included in the plurality of personal data management policies.34. The method of claim 28, wherein the processing of the receivedpersonal data in accordance with the plurality of personal datamanagement policies further comprises at least one action selected froma group of actions consisting of aggregating the personal data,filtering the personal data, summarizing the personal data,characterizing the personal data, modifying the personal data, linkingto or from the personal data, publishing the personal data, storing thepersonal data, categorizing the personal data, or sharing the personaldata.
 35. The method of claim 34, wherein the categorizing of thepersonal data further comprises using the personal data forpersonalization of search results.
 36. A computing device comprising: aprocessor; a storage medium for tangibly storing thereon program logicfor execution by the processor, the program logic comprising: providinglogic executed by the processor for providing, to a user client device,a centralized interface to manage personal data associated with theuser; policy receiving logic executed by the processor from the userclient device for receiving user input via the interface, the inputcomprising a plurality of personal data management policies for the userthat are unique to the user, the personal data management policiesgoverning how personal data of the user is to be managed, each policy ofthe plurality of the personal data management policies describing atleast one action selected from a group of actions consisting ofmonitoring, collecting, aggregating, filtering, processing, storing,publishing, or sharing of the personal data; personal data receivinglogic executed by the processor from a personal data client device forreceiving further user input via the interface, the further inputcomprising personal data associated with the user; determining logicexecuted by the processor for determining whether the received personaldata complies with the received plurality of personal data managementpolicies; processing logic executed by the processor for processing,when the received personal data complies, the received personal data inaccordance with the received plurality of personal data managementpolicies; and performing logic executed by the processor for performing,when the received personal data does not comply, a non-complianceoperation on the received personal data, the non-compliance operationselected from a group of operations consisting of discarding thereceived personal data, filtering the received personal data, blurringthe received personal data, or modifying the received personal data. 37.The computing device of claim 36, wherein the personal data receivinglogic for receiving further user input comprising the personal dataassociated with the user further comprises receiving logic forreceiving, from a mobile personal device, the personal data associatedwith the user.
 38. The computing device of claim 36, wherein thepersonal data receiving logic for receiving further user inputcomprising the personal data associated with the user further comprisesreceiving logic executed by the processor for receiving, from a clientnot associated with the user, the personal data associated with theuser.
 39. The computing device of claim 36, wherein the determininglogic further comprises ensuring logic executed by the processor forensuring that the received personal data is a type of data that shouldbe collected according to specific data collection policies included inthe plurality of personal data management policies.
 40. The computingdevice of claim 36, wherein the personal data receiving logic forreceiving further user input comprising the personal data associatedwith the user further comprises receiving logic executed by theprocessor for receiving an identifier assigned to the user.
 41. Thecomputing device of claim 36, wherein the processing logic executed bythe processor further comprises data processing logic executed by theprocessor for processing the received personal data based on specificdata process policies included in the plurality of personal datamanagement policies.
 42. The computing device of claim 36, wherein theprocessing logic further comprises data processing logic executed by theprocessor for at least one action selected from a group of actionsconsisting of aggregating the personal data, filtering the personaldata, summarizing the personal data, characterizing the personal data,modifying the personal data, linking to or from the personal data,publishing the personal data, storing the personal data, categorizingthe personal data, or sharing the personal data.
 43. The computingdevice of claim 42, wherein the categorizing of the personal datafurther comprises using the personal data for personalization of searchresults.
 44. A non-transitory computer-readable storage medium tangiblystoring computer program instructions capable of being executed by acomputer processor, the computer program instructions defining the stepsof: providing, by the processor to a user client device, a centralizedinterface to manage personal data associated with the user; receiving,by the processor from the user client device, user input via theinterface, the input comprising a plurality of personal data managementpolicies for the user that are unique to the user, the personal datamanagement policies governing how personal data of the user is to bemanaged, each policy of the plurality of the personal data managementpolicies describing at least one action selected from a group of actionsconsisting of monitoring, collecting, aggregating, filtering,processing, storing, publishing, or sharing of the personal data;receiving, by the processor from a personal data client device, furtheruser input via the interface, the further input comprising personal dataassociated with the user; determining, by the processor, whether thereceived personal data complies with the received plurality of personaldata management policies; when the received personal data complies,processing, by the processor, the received personal data in accordancewith the received plurality of personal data management policies; andwhen the received personal data does not comply, perform anon-compliance operation, by the processor, on the received personaldata, the non-compliance operation selected from a group of operationsconsisting of discarding the received personal data, filtering thereceived personal data, blurring the received personal data, ormodifying the received personal data.
 45. The medium of claim 44,wherein the receiving, by the processor from the personal data clientdevice, further user input comprising the personal data associated withthe user further comprises receiving, from a client not associated withthe user, the personal data associated with the user.
 46. The medium ofclaim 44, wherein the determining, by the processor, whether thereceived personal data complies with the plurality of personal datamanagement policies further comprises ensuring that the receivedpersonal data is a type of data that should be collected according tospecific data collection policies included in the plurality of personaldata management policies.
 47. The medium of claim 44, wherein theprocessing of the received personal data in accordance with theplurality of personal data management policies further comprises atleast one action selected from a group of actions consisting ofaggregating the personal data, filtering the personal data, summarizingthe personal data, characterizing the personal data, modifying thepersonal data, linking to or from the personal data, publishing thepersonal data, storing the personal data, categorizing the personaldata, or sharing the personal data.